package com.cdtu.stocksage.goods.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.cdtu.stocksage.common.annotation.Excel;
import com.cdtu.stocksage.common.core.domain.BaseEntity;

/**
 * 物资出库明细对象 ers_goods_out_detail
 * 
 * @author SL
 * @date 2025-03-12
 */
public class ErsGoodsOutDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private String id;

    /** 出库记录ID */
    @Excel(name = "出库记录ID")
    private String recordId;

    /** 仓库ID */
    @Excel(name = "仓库ID")
    private String warehouseId;

    /** 仓库名称 */
    @Excel(name = "仓库名称")
    private String warehouseName;

    /** 物资ID */
    @Excel(name = "物资ID")
    private String goodsId;

    /** 物资名称 */
    @Excel(name = "物资名称")
    private String goodsName;

    /** 物资图片 */
    @Excel(name = "物资图片")
    private String goodsPic;

    /** 出库数量 */
    @Excel(name = "出库数量")
    private BigDecimal goodsNum;

    /** 单位 */
    @Excel(name = "单位")
    private String goodsUnit;

    /** 是否需要归还 */
    @Excel(name = "是否需要归还")
    private Integer returnFlag;

    /** 归还状态 */
    @Excel(name = "归还状态")
    private Integer returnStatus;

    /** 是否入库 */
    @Excel(name = "是否入库")
    private Integer enterFlag;

    /** 归还数量 */
    @Excel(name = "归还数量")
    private BigDecimal returnNum;

    /** 归还人 */
    @Excel(name = "归还人")
    private String returnUser;

    /** 领取人单位 */
    @Excel(name = "领取人单位")
    private String returnUserUnit;

    /** 领取人职务 */
    @Excel(name = "领取人职务")
    private String returnUserPosition;

    /** 领取人电话 */
    @Excel(name = "领取人电话")
    private String returnUserPhone;

    /** 归还时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "归还时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date returnTime;

    /** 归还备注 */
    @Excel(name = "归还备注")
    private String remarks;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setRecordId(String recordId) 
    {
        this.recordId = recordId;
    }

    public String getRecordId() 
    {
        return recordId;
    }

    public void setWarehouseId(String warehouseId) 
    {
        this.warehouseId = warehouseId;
    }

    public String getWarehouseId() 
    {
        return warehouseId;
    }

    public void setWarehouseName(String warehouseName) 
    {
        this.warehouseName = warehouseName;
    }

    public String getWarehouseName() 
    {
        return warehouseName;
    }

    public void setGoodsId(String goodsId) 
    {
        this.goodsId = goodsId;
    }

    public String getGoodsId() 
    {
        return goodsId;
    }

    public void setGoodsName(String goodsName) 
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName() 
    {
        return goodsName;
    }

    public void setGoodsPic(String goodsPic) 
    {
        this.goodsPic = goodsPic;
    }

    public String getGoodsPic() 
    {
        return goodsPic;
    }

    public void setGoodsNum(BigDecimal goodsNum) 
    {
        this.goodsNum = goodsNum;
    }

    public BigDecimal getGoodsNum() 
    {
        return goodsNum;
    }

    public void setGoodsUnit(String goodsUnit) 
    {
        this.goodsUnit = goodsUnit;
    }

    public String getGoodsUnit() 
    {
        return goodsUnit;
    }

    public void setReturnFlag(Integer returnFlag) 
    {
        this.returnFlag = returnFlag;
    }

    public Integer getReturnFlag() 
    {
        return returnFlag;
    }

    public void setReturnStatus(Integer returnStatus) 
    {
        this.returnStatus = returnStatus;
    }

    public Integer getReturnStatus() 
    {
        return returnStatus;
    }

    public void setEnterFlag(Integer enterFlag) 
    {
        this.enterFlag = enterFlag;
    }

    public Integer getEnterFlag() 
    {
        return enterFlag;
    }

    public void setReturnNum(BigDecimal returnNum) 
    {
        this.returnNum = returnNum;
    }

    public BigDecimal getReturnNum() 
    {
        return returnNum;
    }

    public void setReturnUser(String returnUser) 
    {
        this.returnUser = returnUser;
    }

    public String getReturnUser() 
    {
        return returnUser;
    }

    public void setReturnUserUnit(String returnUserUnit) 
    {
        this.returnUserUnit = returnUserUnit;
    }

    public String getReturnUserUnit() 
    {
        return returnUserUnit;
    }

    public void setReturnUserPosition(String returnUserPosition) 
    {
        this.returnUserPosition = returnUserPosition;
    }

    public String getReturnUserPosition() 
    {
        return returnUserPosition;
    }

    public void setReturnUserPhone(String returnUserPhone) 
    {
        this.returnUserPhone = returnUserPhone;
    }

    public String getReturnUserPhone() 
    {
        return returnUserPhone;
    }

    public void setReturnTime(Date returnTime) 
    {
        this.returnTime = returnTime;
    }

    public Date getReturnTime() 
    {
        return returnTime;
    }

    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("recordId", getRecordId())
            .append("warehouseId", getWarehouseId())
            .append("warehouseName", getWarehouseName())
            .append("goodsId", getGoodsId())
            .append("goodsName", getGoodsName())
            .append("goodsPic", getGoodsPic())
            .append("goodsNum", getGoodsNum())
            .append("goodsUnit", getGoodsUnit())
            .append("returnFlag", getReturnFlag())
            .append("returnStatus", getReturnStatus())
            .append("enterFlag", getEnterFlag())
            .append("returnNum", getReturnNum())
            .append("returnUser", getReturnUser())
            .append("returnUserUnit", getReturnUserUnit())
            .append("returnUserPosition", getReturnUserPosition())
            .append("returnUserPhone", getReturnUserPhone())
            .append("returnTime", getReturnTime())
            .append("remarks", getRemarks())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
